package com.eke.service;

import java.util.List;

import com.eke.bean.Comment;

public interface CommentService {
	/**
	 * 查询文章评论总数
	 * 
	 * @param articleId
	 *            文章Id
	 * @return int
	 */
	int queryArticleCommentTotal(Integer articleId);

	/**
	 * 查询文章评论
	 * 
	 * @param articleId
	 *            文章id
	 * @param startRow
	 *            起始页码
	 * @param pageSize
	 *            每页数据
	 * @return List<{@link Comment}>
	 */
	List<Comment> queryArticleComment(Integer articleId, int startRow, int pageSize);

	/**
	 * 添加文章评论
	 * 
	 * @param comment
	 * @return {@link Boolean}
	 */
	boolean addArticleComment(Comment comment);

	/**
	 * 结合分页查询评论的回复
	 * 
	 * @param commentId
	 *            评论id
	 * @param startRow
	 *            开始页
	 * @param pageSize
	 *            数量
	 * @return List <{@link Comment}>
	 */
	public List<Comment> qurryCommentRq(int commentId, int startRow, int pageSize);

	/**
	 * 点赞
	 * 
	 * @param commentId
	 * @return {@link Boolean}
	 */
	public boolean goodNumber(int commentId);

	/**
	 * 点踩
	 * 
	 * @param commentId
	 * @return {@link Boolean}
	 */
	public boolean badNumber(int commentId);

	/**
	 * 添加评论的回复
	 * 
	 * @param comment
	 * @return {@link Boolean}
	 */
	public boolean addCommentRq(Comment comment);

	/**
	 * 查询文章评论总数
	 * 
	 * @return int
	 */
	public int queryCommentRqTotal(int commentId);

	/**
	 * 更改评论状态为采纳
	 * 
	 * @param commentId
	 *            评论id
	 * @return {@link Boolean} 成功返回true 失败返回false
	 */
	public boolean updateCommentState(int commentId);

	/**
	 * 评论被采纳后，增加积分
	 * 
	 * @param interal
	 *            积分数量
	 * @param commentUserId
	 *            评论用户id
	 * @return {@link Boolean} true 增加成功 false 增加失败
	 */
	public boolean addInteral(int interal, int commentUserId);
}
